home *** CD-ROM | disk | FTP | other *** search
/ Power Programmierung / Power-Programmierung (Tewi)(1994).iso / magazine / progjour / 1988 / vga_code / vga_read.me < prev    next >
Text File  |  1989-06-15  |  8KB  |  159 lines

  1. Copyright 1988, 1989 Michael Abrash
  2. All other rights are reserved by Oakley Publishing Company
  3.  
  4.         ***********************************************************
  5.         * * * * *   PROGRAMMER'S JOURNAL--VGA CODE DISK   * * * * *
  6.         ***********************************************************
  7.  
  8. The source code files on this disk are from Programmer's Journal,
  9. Volume 6.1, January/February 1988 through Volume 7.4, July/August 1989.
  10. These files are identical to those published in the magazine. The copyrights 
  11. are held by the programs'authors, as noted in the files.  All other rights are 
  12. reserved by Oakley Publishing Company, 1988 and 1989.  No one may commercially
  13. distribute these files.  Every effort has been made to assure that the program 
  14. files are correct and complete.  No guarantee, express or implied, is offered 
  15. as to the correctness of the files, nor to the fitness of the programs for any 
  16. purpose whatsoever.
  17.  
  18. The files for Volume 6.1 are from Michael Abrash's article entitled
  19.        "Write Mode 3 of the VGA"--strange indeed, what's it for
  20.  
  21.      VGA61-L1.ASM   Program to illustrate operation of write mode 3 of the 
  22.                     VGA. Draws 8x8 characters at arbitrary locations without 
  23.                     disturbing the background, using VGA's 8x8 ROM font. 
  24.                     Designed for use with modes 0Dh, 0Eh, 0Fh, 10h, and 12h.
  25.  
  26.      VGA61-L2.ASM   Program to illustrate high-speed test drawing operation 
  27.                     using write Mode 3 of the VGA. Draws a string of 8x14 
  28.                     characters at arbitrary locations without disturbing the 
  29.                     background, using VGA's 8x14 ROM font. Designed for use 
  30.                     with modes 0Dh, 0Eh, 0Fh, 10h, and 12h.
  31.  
  32. The files from Volume 6.2 are from Michael Abrash's article entitled
  33.      "Yet Another VGA Write Mode"--the easy stuff, write mode 2
  34.  
  35.      VGA62-L1.ASM   Program to illustrate one use of Write Mode 2 VGA and 
  36.                     EGA by animating the image of the letter "A" drawn by 
  37.                     copying it from a chunky bit-map in system memory to
  38.                     a planar bit-map in VGA or EGA memory
  39.  
  40.      VGA62-L2.ASM   Program to illustrate one use of Write Mode 2 of the 
  41.                     VGA and EGA by drawing lines in color patterns
  42.  
  43.      VGA62-L3.ASM   Program to illustrate flipping from bit-mapped graphics 
  44.                     mode to text mode and back without losing any of the 
  45.                     graphics bit-map
  46.  
  47. The files from Volume 6.4 are from Michael Abrash's article entitled
  48.      "Reading VGA Memory"--the two VGA Read modes dissected
  49.  
  50.      VGA64-L1.ASM   Program to illustrate one use of the Read Map register 
  51.                     in read mode 0. Animates by copying a 16-bit color image 
  52.                     from VGA memory to system memory, one plane at a time, 
  53.                     then copying the image back to new location in
  54.                     VGA memory
  55.  
  56.      VGA64-L2.ASM   Program to illustrate one use of the read mode 1 (color 
  57.                     compare mode) to detect collisions in display memory. 
  58.                     Draws a yellow line on a blue background, then draws a 
  59.                     perpendicular green line until the yellow line is 
  60.                     reached.
  61.  
  62.      VGA64-L3.ASM   Program that draws a diagonal line to illustrate the use 
  63.                     of a Color Don't Care register setting of 0FFh to 
  64.                     support fast read-modify-write operations to VGA memory 
  65.                     in write mode 3 by drawing a diagonal line
  66.  
  67. The files from Volume 6.5 are from Michael Abrash's article entitled
  68.      "VGA Text Paging"--find 32 text pages, and assembler routines that should 
  69.      take care of most of your text paging needs
  70.      
  71.  
  72.      VGA65-L1.ASM   Program to demonstrate the 4 text pages of the CGA 
  73.  
  74.      VGA65-L2.ASM   Program to demonstrate the 32 text pages of the VGA/EGA 
  75.  
  76. The files from Volume 6.6 are from Michael Abrash's article entitled
  77.      "Saving VGA Screens, Color Selection, adn other Mysteries"--the less
  78.      obvious details and MASM quirks
  79.      
  80.  
  81.      VGA66-L1.ASM   Program to put up a mode 10h EGA graphics screen, then 
  82.                     save it to the file SNAPSHOT.SCR
  83.  
  84.      VGA66-L2.ASM   Program to restore a mode 10h EGA graphics screen from 
  85.                     the file SNAPSHOT.SCR
  86.  
  87.      VGA66-L3.ASM   Program to illustrate the color mapping capabilities of 
  88.                     the EGA's pallette registers
  89.  
  90.      VGA66-L4.ASM   Program to demonstrate screen blanking via bit 5 of the 
  91.                     Attribute Controller index register
  92.        
  93. The files from Volume 7.1 are from Michael Abrash's article entitled
  94.      "Higher 256-color Resolution on the VGA"--when is 320x200 really 320x400, 
  95.      and those less obvious high resolution VGA color modes
  96.      
  97.      VGA71-L1.ASM   Program to demonstrate pixel drawing in 320x400 
  98.                     256-color mode on the VGA. Draws 8 lines to form an 
  99.                     octogon, a pixel at a time. Draws 8 octogons in all, 
  100.                     one on top of the other, each in a different color set.  
  101.                     Although it's not used, a pixel read function is also 
  102.                     provided
  103.  
  104.      VGA71-L2.ASM   Program to demonstrate the two pages available in 
  105.                     320x400 256-color modes on a VGA. Draws diagonal color 
  106.                     bars in all 256 colors in page 0, then does the same in 
  107.                     page 1 (but with bars tilted the other way), and finally 
  108.                     draws vertical color bars in page 0
  109.  
  110. The files from Volume 7.2 are from Michael Abrash's article entitled
  111.      "EGA and VGA Animation"--using the EGA/VGA bit-plane architecture and 
  112.      color palette for animation.
  113.  
  114.      ANIMATE.ASM    Assembler source program to demonstrate bit-plane animation
  115.      ANIMATE.EXE    Executable file for a VGA
  116.  
  117. The files from Volume 7.3 are from Michael Abrash's article entitled
  118.      "Fast Line Drawing for the EGA and VGA".  Bresenham's algorithm 
  119.      implemented for the EGA/VGA in both C and assembly language.
  120.  
  121.      LINEDEMO.C     C source program to demonstrate line drawing
  122.      EVGALINE.C     Turbo C source module for line drawing using
  123.                     Bresenham's algorithm for the EGA and VGA
  124.      SLOWDEMO.EXE   Executable file based on Turbo C line drawing module
  125.      EVGALINE.ASM   Assembly language source module for line drawing using
  126.                     Bresenham's algorithm for the EGA and VGA
  127.      FASTDEMO.EXE   Executable file based on assembly language line drawing 
  128.                     module
  129.        
  130. The files from Volume 7.4 are from Michael Abrash's article entitled
  131.      "Measuring Performance".  A high-resolution timer for testing your 
  132.      graphics code.
  133.  
  134.      TIMER.ASM      Assembly language source code for a high resolution 
  135.                     timer for graphics testing
  136.      TESTIMER.ASM   Assembly language source code for an example using
  137.             the Timer routines to time a sample piece of graphics
  138.             code
  139.      TESTIMER.EXE   An executable version of this sample Timer test routine
  140.  
  141.  
  142.      PJINDEX.66     Index to Programmer's Journal Volume 6, 1988.
  143.                 An ascii text file of articles in PJ Volume 6
  144.                 in 128-column-width format.
  145.  
  146.        
  147. If you would like to subscribe to Programmer's Journal, order back
  148. issues, or buy one of our nifty T-Shirts, please write to:
  149.  
  150.                       Programmer's Journal
  151.                       PO Box 30160
  152.                       Eugene, OR 97403
  153.  
  154.                    or call (503) 747-0800.
  155.  
  156. Subscriptions are only $19.95 annually (six issues).  We welcome
  157. your comments about the magazine and the code.  Please let us
  158. know what you think, at the address given above.
  159.